The present invention generally relates to computing system virtualization technologies, and more particularly relates to using semantically rich composable software bundles to design and build virtual image assets.
Compute clouds such as Amazon EC2, and virtualization technologies, such as VMWARE are increasing in popularity. However, software providers, solution providers, and end users are facing challenges in packaging software and solutions as virtual image assets, either for in house use, private clouds, or public clouds. Some of the challenges in building virtual image assets are not new. These challenges include well-known installation challenges such as installation fragility, version compatibility problems, and satisfying software dependencies. Some other challenges are specific to the area of virtualization and cloud technologies. They include the need to not only install software, but to also configure an activation mechanism that personalizes the software per each image asset deployment. This step is sometimes necessary for the software to be functional (e.g., changing the host name configuration), and other times is necessary to make it more useful for sharing across different users. In addition, image asset builders must deal with multiple different virtualization platforms and technology (VMWARE, XEN, AMIs . . . ), and multiple different mechanisms, APIs, processes, and meta data per each target cloud. Also, packaging a solution including multiple software components on a set of virtual image assets is challenging since software on different virtual image assets must be cross-configured (implying ordering of script execution at deployment and parameter value dependencies).